package com.web.common.basic.quartz.entity;

import java.time.LocalDateTime;

import com.fasterxml.jackson.annotation.JsonIgnore;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;

@Getter
@Setter
@Schema(title = "定时任务信息", description = "定时任务信息")
public class QuartzJobDetail {

	/** 调度器名称 */
	@Schema(title = "调度器名称")
	private String schedName;
	
	/** 任务名称 */
	@Schema(title = "任务名称")
	private String jobName;
	
	/** 任务分组 */
	@Schema(title = "任务分组")
	private String jobGroup;
	
	/** 任务描述 */
	@Schema(title = "任务描述")
	private String description;
	
	/** 任务对应类名称 */
	@Schema(title = "任务对应类名称")
	private String jobClassName;
	
	/** 任务对应类名称 */
	@Schema(title = "任务对应类名称")
	private String triggerType;
	
	/** 任务对应类名称描述 */
	@Schema(title = "任务对应类名称描述")
	private String triggerTypeName;
	
	/** 触发器的状态 */
	@Schema(title = "触发器的状态")
	private String triggerState;
	
	/** 任务状态，0启动；1暂停 */
	@Schema(title = "任务状态，0启动；1暂停")
	private Integer jobStatus;
	
	/** 下次执行的时间 */
	@JsonIgnore
	@Schema(title = "下次执行的时间")
	private Long nextFireTimeNum;
	
	/** 任务开始时间 */
	@JsonIgnore
	@Schema(title = "任务开始时间")
	private Long startTimeNum;
	
	/** 任务结束时间 */
	@JsonIgnore
	@Schema(title = "任务结束时间")
	private Long endTimeNum;
	
	/** 下次执行的时间 */
	@Schema(title = "下次执行的时间")
	private LocalDateTime nextFireTime;
	
	/** 任务开始时间 */
	@Schema(title = "任务开始时间")
	private LocalDateTime startTime;
	
	/** 任务结束时间 */
	@Schema(title = "任务结束时间")
	private LocalDateTime endTime;
}
